Graphs are abstract data types that implement unidirected graphs and directed graphs as described by Graph Theory.